Programmeringsparadigmer, Algoritmer og compitationel tænkning

Jeppe Fjeldgaard Qvist

2025-09-21

Dagens program

  • Software
    1. programmering som disciplin.
    2. Hvordan får vi hardwaren til at gøre det vi gerne vil have den til?
    3. Hvilke principper ligger til grund for dette
  • Øvelse i plenum

Python

  1. Åben terminal/kommandoprompt
  2. Skriv: Python3 [tryk Enter]
  3. Skriv: print("Hello World!") [tryk Enter]

Python programmer (1)

  1. Åben TextEdit [Mac] eller Notepad [Windows]
  2. Skriv:
tekst = "Hello World!"
for i in range(10)
  print(tekst)
  1. Gem filen som: hello_world.py


Python programmer (2)

  1. Åben Positron (eller VScode)
  2. Vælg: ny fil
  3. Gem som: test_tal.py
  4. Skriv:
tal = 5
if (tal < 10):
  print("Tallet er mindre end 10")
else: 
  print("Tallet er ikke mindre end 10")
  1. Kør koden
    5.1. Run [CTRL+ALT+N] eller markér kode [CMD+Enter]


Data

Lagring af data

Abstraktion

Algoritmer

Algoritme øvelse

  1. Udskrive alle lige tal mellem 1 og 100 (Hint: I Python kan lige tal findes med: KODE)
  2. Input et positivt heltal mellem 1 og 200. Output arealet på en kvadrat med en sidelængde svarende til tallet (Hint: Formlen er \(11111111\)).
  3. Brugeren giver et navn som input. Hvis navnet er ”Arthur” så output ”Har du husket dit håndklæde?”. For alle andre navne output ”Hej ” + navnet + ”!”.

Praktisk øvelse i Position og introduktion til notebooks

Programmeringsparadigmer

Procedureorienteret Programmering

Procedureorienteret programmering baseres på, at man beskriver for computeren – trin for trin – hvad den skal foretage sig, og hvordan dens tilstand skal ændre sig. Paradigmet kan kaldes for programmering på elektronikkens præmisser. De mest kendte programmeringssprog hvor procedureorienteret programmering gør sig gældende er C og Pascal.

Funktionel Programmering

I det funktionsorienterede paradigme behandles opgaven, der skal løses, som en evaluering af matematiske funktioner. Eksempler på funktionelle programmeringssprog er R, Scheme, Erlang, OCaml, Haskell, SML, Lisp og F#.

Logikbaseret Programmering

Endelig findes det logikbaserede paradigme. Logikbaseret programmering er, i den bredeste forstand, brugen af matematisk logik til computerprogrammering. Det mest kendte programmeringssprog hvor logikbaseret programmering gør sig gældende er Prolog.

Objektorienteret Programmering

I det objektorienterede paradigme behandles opgaven, der skal løses, ved brug af såkaldte objekter. Et objekt i programmet repræsenterer en forestilling af objektet i virkeligheden. Objekter med lignende egenskaber samles i klasser. En vigtig del af det objektorienterede paradigme er at skjule implementationen, således at objektet ligner virkeligheden, og implementationsdetaljer kan modificeres, uden at måden hvorpå objektet benyttes udefra ændres. Eksempler på programmeringssprog hvor objektorienteret programmering gør sig gældende er bl.a. Python, Java, C++ og C#.